//
//  WIFIHelper.h
//  Router
//
//  Created by teki on 15/10/22.
//  Copyright © 2015年 dc. All rights reserved.
//

#import "BaseHelper.h"

@interface WIFIHelper : BaseHelper

/**
 *  获取上下行速率数据
 *
 *  @param device_id 登录后返回值中wifi.device_id
 *  @param success   成功的回调
 *  @param failure   失败的回调
 */
- (void)getUpLoadAnDownLoadSpeedWithDeviceID:(NSString *)device_id
                                     success:(RequestSussess)success
                                     failure:(RequestFailure)failure;


/**
 *  刷新数据
 *
 *  @param device_id 当前wifi的device_id
 *  @param userName  当前用户名
 *  @param success   <#success description#>
 *  @param failure   <#failure description#>
 */
- (void)refreshDataWithDeviceID:(NSString *)device_id
                       userName:(NSString *)userName
                        success:(RequestSussess)success
                        failure:(RequestFailure)failure;



/**
 *  设置WIFI的SSID与密码
 *
 *  @param ssid      设置的ssid
 *  @param password  设置的密码
 *  @param device_id 当前管理的WIFI的device_id
 *  @param success   <#success description#>
 *  @param failure   <#failure description#>
 */
- (void)settingWIFIInfoWithSSID:(NSString *)ssid
                       password:(NSString *)password
                       deviceID:(NSString *)device_id
                        success:(RequestSussess)success
                        failure:(RequestFailure)failure;
 
/**
 *  设置猫的WIFI开关
 *
 *  @param device_id       stations[i]. device_id
 *  @param isOpen          true或者false
 *  @param power           辐射值，即下方的滑动条的value
 *  @param masterDevice_id 当前管理的WIFI的device_id
 *  @param success         <#success description#>
 *  @param failure         <#failure description#>
 */
- (void)settingWIFIStatusWithDeviceID:(NSString *)device_id
                         switchStatus:(BOOL)isOpen
                                power:(NSInteger)power
                       masterDeviceID:(NSString *)masterDevice_id
                              success:(RequestSussess)success
                              failure:(RequestFailure)failure;





/**
 *  设置健康模式
 *
 *  @param deviceID       stations[i]. device_id,
 *  @param wifiOnTime     wifi开始时间
 *  @param wifiOffTime    wifi关闭时间
 *  @param enable         将抗模式的开关
 *  @param masterDeviceID 当前管理的WIFI的ID
 *  @param success        <#success description#>
 *  @param failure        <#failure description#>
 */
- (void)settingWIFIHealthModelWithDeviceID:(NSString *)deviceID
                              wifi_on_time:(NSString *)wifiOnTime
                             wifi_off_time:(NSString *)wifiOffTime
                                    enable:(BOOL)enable
                           masterDeviceID:(NSString *)masterDeviceID
                                   success:(RequestSussess)success
                                   failure:(RequestFailure)failure;



/**
 *  设置设备别名
 *
 *  @param alias          别名
 *  @param deviceID       stations[i].device_id,
 *  @param masterDeviceID 当前管理WIFI的device_id
 *  @param success        <#success description#>
 *  @param failure        <#failure description#>
 */
- (void)setDeviceAliasWithAlias:(NSString *)alias
                       deviceID:(NSString *)deviceID
                 masterDeviceID:(NSString *)masterDeviceID
                        success:(RequestSussess)success
                        failure:(RequestFailure)failure;




- (void)checkUpdateWithDeviceID:(NSString *)deviceid
                 masterDeviceID:(NSString *)masterDeviceID
                        success:(RequestSussess)success
                        failure:(RequestFailure)failure;


- (void)upgradeMotherCatWithDeviceID:(NSString *)deviceID
                             fileURL:(NSString *)fileURL
                             success:(RequestSussess)success
                             failure:(RequestFailure)failure;


- (void)upgradeSonCatWithDeviceID:(NSString *)deviceID
                   masterDeviceID:(NSString *)masterDeviceID
                          fileURL:(NSString *)fileURL
                          success:(RequestSussess)success
                          failure:(RequestFailure)failure;


- (RequestManager *)getCheckUpdateWithDeviceID:(NSString *)deviceid masterDeviceID:(NSString *)masterDeviceID success:(RequestSussess)success failure:(RequestFailure)failure;

- (RequestManager *)getUpgradeMotherCatWithDeviceID:(NSString *)deviceID fileURL:(NSString *)fileURL success:(RequestSussess)success failure:(RequestFailure)failure;

- (RequestManager *)getUpgradeSonCatWithDeviceID:(NSString *)deviceID masterDeviceID:(NSString *)masterDeviceID fileURL:(NSString *)fileURL success:(RequestSussess)success failure:(RequestFailure)failure;

@end
